Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Fix]: Feature/primary sourceset selector #216

Merged
merged 6 commits into from
Jun 24, 2024

Conversation

marchermans
Copy link
Contributor

@marchermans marchermans commented Jun 24, 2024

TLDR:

  • New FML hates multiple MCs per classpath
  • Is not entirely preventable when multiple sourcesets are involved, specifically then when multiple MC providing plugins from different sourcesets are in play.
  • Create handling logic for primary sourcesets.
  • Fix tests
  • Introduce support for config cache running with runs

Changes:

  • Introduce primary sourceset
    • Alters the behaviour of the classpath of a run. Does not change anything for IDEs, as those have their own behaviours when it comes to classpaths, only deals with run tasks.
  • Remove RunExec, plain JavaExec now, which means support for runs in config cache
  • Cleans up internal handling of config cache.
  • Tests are fixed
  • Removes the windows specific locking behaviour because it does not work with Daemons now that recompile is being cached.

Issues:

Closes: #214
Closes: #198

@neoforged-pr-publishing
Copy link

neoforged-pr-publishing bot commented Jun 24, 2024

  • Publish PR to GitHub Packages

Last commit published: a804493dd3f1d46b8837de40a0d5c7cafbc86d06.

PR Publishing

The artifacts published by this PR:

Repository Declaration

In order to use the artifacts published by the PR, add the following repository to your buildscript:

repositories {
    maven {
        name 'Maven for PR #216' // https://github.com/neoforged/NeoGradle/pull/216
        url 'https://prmaven.neoforged.net/NeoGradle/pr216'
        content {
            includeModule('net.neoforged.gradle.common', 'net.neoforged.gradle.common.gradle.plugin')
            includeModule('net.neoforged.gradle', 'dsl-platform')
            includeModule('net.neoforged.gradle', 'dsl-userdev')
            includeModule('net.neoforged.gradle', 'dsl-common')
            includeModule('net.neoforged.gradle', 'platform')
            includeModule('net.neoforged.gradle.vanilla', 'net.neoforged.gradle.vanilla.gradle.plugin')
            includeModule('net.neoforged.gradle', 'test-utils')
            includeModule('net.neoforged.gradle', 'mixin')
            includeModule('net.neoforged.gradle', 'dsl-mixin')
            includeModule('net.neoforged.gradle', 'neoform')
            includeModule('net.neoforged.gradle', 'dsl-vanilla')
            includeModule('net.neoforged.gradle', 'userdev')
            includeModule('net.neoforged.gradle', 'vanilla')
            includeModule('net.neoforged.gradle.userdev', 'net.neoforged.gradle.userdev.gradle.plugin')
            includeModule('net.neoforged.gradle', 'dsl-neoform')
            includeModule('net.neoforged.gradle.neoform', 'net.neoforged.gradle.neoform.gradle.plugin')
            includeModule('net.neoforged.gradle.mixin', 'net.neoforged.gradle.mixin.gradle.plugin')
            includeModule('net.neoforged.gradle', 'common')
            includeModule('net.neoforged.gradle', 'utils')
            includeModule('net.neoforged.gradle.platform', 'net.neoforged.gradle.platform.gradle.plugin')
        }
    }
}

sciwhiz12
sciwhiz12 previously approved these changes Jun 24, 2024
Copy link
Member

@sciwhiz12 sciwhiz12 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Logic looks good to me. As long as the tests agree, automated and local/manual, should be good.

… intended with respect to the gradle worker daemons.
@marchermans marchermans merged commit 4c76373 into NG_7.0 Jun 24, 2024
106 checks passed
@Matyrobbrt Matyrobbrt deleted the feature/primary-sourceset-selector branch June 24, 2024 21:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Multiple copies of Minecraft on the runtime classpath (NG7+MDG issue) Configuration Cache Problems
2 participants